#coding=utf-8

# --coding=utf-8

# 导入读取Excel的库
from openpyxl import load_workbook
# 导入操作mysql的库
import pymysql

def excelInsertMysql(file):
    # 文件路径
    # file = "./存放数据的Excel表格文件路径"
    # 打开Excel文件
    wb = load_workbook(file)
    # 获取所需的sheet表，索引0代表第一张表，也就是Sheet1，以此类推
    data_sheet = wb.worksheets[0]
    # 存放数据的列表
    all_data = []
    # 循环从sheet表中读取数据
    for i in range(2, data_sheet.max_row + 1):  # 读取从第二行(第一行是标题)到最后一行的内容
        row_list = []  # 存放每行数据的小列表
        for row in data_sheet[i]:
            row_list.append(str(row.value))  # 将数据转换成字符串后插入到小列表中
        all_data.append(row_list)  # 将小列表插入到大列表中
    # todo:连接数据库
    conn = pymysql.connect(host='localhost', user='root', passwd='root')
    # 创建游标对象
    cursor = conn.cursor()
    # 进入指定数据库
    cursor.execute("USE `my_data`;")
    # 写好预设sql
    s = "INSERT INTO `students`(stu_id, stu_name, stu_gender) VALUES('%d', '%d', '%d');"
    # 循环取出数据列表中的每一行数据
    for data in all_data:
        # 拼接sql
        sql = s % (data[0], data[1], data[2])
        # 执行sql
        cursor.execute(sql)
    # 提交事务，不然MySQL不会成功插入数据
    conn.commit()
    # 打印成功信息
    print("所有数据插入成功!")